A Kalman filter is commonly used in a global navigation satellite system (GNSS) receiver to smooth the computed user motion (e.g., position, velocity, and time). A Kalman filter provides a process that uses a series of measurements observed over time, containing statistical noise and other inaccurate measurements, and provides an estimate of unknown variables that tend to be more precise than those based on a single measurement alone. The estimate may be based on Bayesian inference and estimating a joint probability distribution over the variables for each time frame.
A Kalman filter works in a two-step process. In the prediction step, the Kalman filter produces estimates of the current state variables, along with their uncertainties. Once the outcome of a subsequent measurement (probably corrupted with some amount of error, including random noise) is observed, these estimates are updated using a weight average, with less weight being given to estimates with higher uncertainty. The Kalman filter process is recursive, and runs in real time, using the present input measurements and the previously calculated state and its uncertainty matrix. A Kalman filter is typically updated at a 1 Hertz (Hz) rate with example inputs being range and range rate measurements made to each of the available satellites.
Essentially, a Kalman filter is a weighting between the immediate previous Kalman filter output and updated measurements. Furthermore, the measurements themselves are weighted according to expected or measured noise. The measurement layer in a receiver may be defined as the method and apparatus that produces range and range rate measurements as an input to the navigation solution process. The measurement layer may provide an independent estimate of errors present in the range and range errors. Such estimate of errors may be described herein as measurement layer error metrics.
Measurement layer metrics may include satellite health, distorted correlation metrics, frequency tracking offset detection, poor network aiding information, and declining carrier-to-noise ratio (CNO). The Kalman filter is not perfect in the sense that un-modeled measurement errors can cause the measurements to diverge from the true position and velocity. In the real world, this may be indicated by a user seeing a map navigation on the wrong street.